home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Arsenal Files 6
/
The Arsenal Files 6 (Arsenal Computer).ISO
/
os2
/
prjmg104.zip
/
PRJMGR.HLP
(
.txt
)
< prev
next >
Wrap
OS/2 Help File
|
1996-01-02
|
22KB
|
709 lines
ΓòÉΓòÉΓòÉ 1. General Information ΓòÉΓòÉΓòÉ
Project Manager V1.04
Project Manager is a simple to use PM-Frontend and Maketool for GCC/EMX 0.9a+b.
It needs the EMX package and will not work without it.
You can create OS/2 Commandline, PM applications and DLL's with Project
Manager.
Further information:
Release Notes
Configuration
Quick Overview
Hints
If you find this program usefull send a postcard (or 9Bit 4MB Simms ;-)) to
Roland Knospe
Prozessionsweg 8
D-59387 Ascheberg
Germany
E-Mail ( until march 1996 )
Knospe@medinf.informatik.fh-dortmund.de
Please report bugs !!!! ( If there are any )
Note: This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.
ΓòÉΓòÉΓòÉ 1.1. Release Notes ΓòÉΓòÉΓòÉ
o V1.0 March 95
- First Release
o V1.01 September 95
- Changed the "Show" Button to "Edit"
- Added a double click action (Edit) to the Files ListBox (Thanks to Harald
Leinders -> I hope it's ok now)
- Changed the run function
1. The original exe file is used for execution.
2. PrjMgr-Window is blocked during execution.
o V1.02 November 95:
- Now it's possible to pass additional (static) arguments to the Editor
- Changed the compiler and linker output redirection from File to Pipe (Now
the compiler and linker calls are faster on my 486DX33 with 8MB)
- Because of a problem with EMX.DLL+Multithreading, Project Manager is now
static linked with the systemcall and c library.
- Added include path settings for GCC to the menu Options/Library & Include
Path. (You don't need to set the environment variables for emx/gcc any
more)
- Moved the C++ Comments Option from the Settings Notebook to the Options
Menu
- Added the Gcc pipe option to the Options Menu
- Added a 'DLL without runtime environment' Option in the Settings Notebook.
It work's like the Zno-rte GCC comandline option.
o V1.03 December 95:
- Fixed a bug with the project template ( Sometimes prjmgr had problems with
empty prj-files.)
- With the help of Eberhard Mattes, i fixed the problem with EMX.DLL (It
was my mistake !!). Now Project Manager is dynamic linked like V1.01
- Changed the online Help. ( Thanks to Jon Wright )
o V1.04 January 96:
- Fixed a problem with the files listbox font
- Added the 'File Listbox Width' Option
- Added the 'Auto Add' button to the header dialog which checks the source
file automaticly
- Added an option to specify additional gcc options
- Changed the help from INF to context sensitve HLP (Thanks to Erik van
Linstee for his suggestions)
- Changed the standard libraries for EMX 0.9b
ΓòÉΓòÉΓòÉ 1.2. Configuration ΓòÉΓòÉΓòÉ
First you have to install the EMX 0.9b (or 0.9a) package (Read the README.DOC
and INSTALL.DOC of the EMX package). Project Manager needs the OMF-style
libraries. Therefore start the OMFLIBS.CMD command file in the \EMX\LIB
directory.
Start the Project Manager.
Change the library and the include Path in the Library & Include Path menu to
the location of your EMX package. You can also change the editor Project
Manager works with, in the Editor Menu.
If you're woking with emx 0.9a, you MUST change the standard libraries! You can
find the settings for emx 0.9a HERE.
ΓòÉΓòÉΓòÉ 1.3. Quick Overview ΓòÉΓòÉΓòÉ
First steps to create a project:
Start Project Manager (or use the project template to create a project object
and start it). Add the source files (*.c, *.cpp, *.m, *.def, *.rc, (or
precompiled *.res, *.obj)) with the Add Button. For the time check of the Make
function, Project Manager needs the header files of each source file. Therefore
a Header dialogbox appears. You can add the header files with the Add or Auto
Add Button.
Example for a PM program:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéSOURCE: ΓöéHEADER: Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéModule1.c ΓöéModule1.h Global.h Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéModule2.cpp ΓöéModule2.h Global.h Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéResource.rc ΓöéDialog.dlg Global.h Icon.ico Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéModule1.c ΓöéDeffile.def Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
Example for a simple program:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéSOURCE: ΓöéHEADER: Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéModule.c ΓöéModule.h Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
Then use the project settings in the Options Menu to set the compiler and
linker settings. For simple commandline programs you can use the default
settings. These settings are for each project individual. They are stored in
the *.prj file.
Save the project with the Save or Save as Button or Menu.
Press the Make Button (or press Compile and then Link).
To start the program use the Run Menu.
ΓòÉΓòÉΓòÉ 1.4. Hints ΓòÉΓòÉΓòÉ
o The Debug option doesn't work with GDB. (it needs unix-style libraries).
IBM's IPMD should work (though I've never tested it!).
o Project Manager works only with OMF style object files and libraries.
o The Standard Libraries setting should only be used to adjust the standard
libraries of future EMX versions. You also have to change it for EMX 0.9a !
o The Make function compiles and links only if it's necessary. (The Make
function doesn't take notice of project setting changes)
o For bigger projects (many *.c *.cpp *.m *.obj files) the source files should
be in the same directory as the project file (the parameter file for LINK386
is limited in size).
ΓòÉΓòÉΓòÉ 2. Files ΓòÉΓòÉΓòÉ
File functions:
Open
Save
Save as
Close
File List
ΓòÉΓòÉΓòÉ 2.1. Open ΓòÉΓòÉΓòÉ
Open a project file.
ΓòÉΓòÉΓòÉ 2.2. Save ΓòÉΓòÉΓòÉ
Save the actual a project file.
ΓòÉΓòÉΓòÉ 2.3. Save as ΓòÉΓòÉΓòÉ
Save the actual a project file with a new name.
ΓòÉΓòÉΓòÉ 2.4. Close ΓòÉΓòÉΓòÉ
Close the actual a project file.
ΓòÉΓòÉΓòÉ 2.5. File List ΓòÉΓòÉΓòÉ
List the source and header files of the actual project file.
ΓòÉΓòÉΓòÉ 3. Source ΓòÉΓòÉΓòÉ
Functions to manage the source files of the project:
Add
Delete
Edit
Header
ΓòÉΓòÉΓòÉ 3.1. Add ΓòÉΓòÉΓòÉ
Add a source file to the project.
ΓòÉΓòÉΓòÉ 3.2. Delete ΓòÉΓòÉΓòÉ
Delete a selected source file from the project.
ΓòÉΓòÉΓòÉ 3.3. Edit ΓòÉΓòÉΓòÉ
Start the editor with the selected source file.
ΓòÉΓòÉΓòÉ 3.4. Header ΓòÉΓòÉΓòÉ
Open the Header Dialog for the selected source file.
ΓòÉΓòÉΓòÉ 4. Test ΓòÉΓòÉΓòÉ
Test functions:
Run
Arguments
ΓòÉΓòÉΓòÉ 4.1. Run ΓòÉΓòÉΓòÉ
Start the compiled project. (Work's only with executables !)
ΓòÉΓòÉΓòÉ 4.2. Arguments ΓòÉΓòÉΓòÉ
Open the Arguments dialog
ΓòÉΓòÉΓòÉ 5. Build ΓòÉΓòÉΓòÉ
You can compile your project with the following functions:
Compile
Link
Make
ΓòÉΓòÉΓòÉ 5.1. Compile ΓòÉΓòÉΓòÉ
Call GCC (RC) to generate new .OBJ (.RES) file(s) for all source files. You can
find each new .OBJ (.RES) file in the directory of it's source file.
ΓòÉΓòÉΓòÉ 5.2. Link ΓòÉΓòÉΓòÉ
Call LINK386 to link all .OBJ files to an executable or a dynamic link library.
You can find the result in the directory of the project file.
ΓòÉΓòÉΓòÉ 5.3. Make ΓòÉΓòÉΓòÉ
Compile and link the project if necessary.
ΓòÉΓòÉΓòÉ 6. Options ΓòÉΓòÉΓòÉ
You can find the following settings here:
Project Settings
Standard Libraries
Library &Include Path
Editor
GCC Load
GCC Pipe-Mode
//-Comments
Message Font
Files Font
File Listbox Width
ΓòÉΓòÉΓòÉ 6.1. Project Settings ΓòÉΓòÉΓòÉ
Open the Project Settings notebook for the actual project.
ΓòÉΓòÉΓòÉ 6.2. Standard Libraries ΓòÉΓòÉΓòÉ
Open the Standard Libraries dialog.
ΓòÉΓòÉΓòÉ 6.3. Library &Include Path ΓòÉΓòÉΓòÉ
Open the Library &Include Path dialog.
ΓòÉΓòÉΓòÉ 6.4. Editor ΓòÉΓòÉΓòÉ
Open the Editor dialog.
ΓòÉΓòÉΓòÉ 6.5. GCC Load ΓòÉΓòÉΓòÉ
Open the GCC Load dialog.
ΓòÉΓòÉΓòÉ 6.6. GCC Pipe-Mode ΓòÉΓòÉΓòÉ
Turn the gcc pipe mode on/off (Pipes between CPP-CC1-AS).
ΓòÉΓòÉΓòÉ 6.7. //-Comments ΓòÉΓòÉΓòÉ
Turn the C++ Comments (//) in C-Source on/off.
ΓòÉΓòÉΓòÉ 6.8. Message Font ΓòÉΓòÉΓòÉ
Change the font of the message display.
ΓòÉΓòÉΓòÉ 6.9. Files Font ΓòÉΓòÉΓòÉ
Change the font of the files listbox.
ΓòÉΓòÉΓòÉ 6.10. File Listbox Width ΓòÉΓòÉΓòÉ
Open the Files Listbox Width dialog.
ΓòÉΓòÉΓòÉ 7. Header Dialog ΓòÉΓòÉΓòÉ
You can add, delete and edit the header files of a source file in this
dialogbox. Project Manager does check the time stamp of these files to
determine if it's necessary to compile the source file.
o Auto Add
Search for #include and rcinclude statements in the source file and add them
as header files.
o Add
Add one or more header files to the source file.
o Delete
Delete the selected header files from the source file.
o Edit
Start the Editor with the selected header file.
ΓòÉΓòÉΓòÉ 8. Arguments Dialog ΓòÉΓòÉΓòÉ
Here you can enter arguments that will be passed to the Run function. This
arguments are stored in then project file.
ΓòÉΓòÉΓòÉ 9. Standard Libraries Dialog ΓòÉΓòÉΓòÉ
This libraries are always passed to the linker. Depending on the project
settings, different libraries are used. You can find the needed libraries in
the EMX documentation.
This setting should only be used to adjust the standard libraries for other EMX
versions than EMX0.9b!
Standard libraries:
EMX 0.9a
EMX 0.9b
ΓòÉΓòÉΓòÉ 9.1. EMX 0.9a Libraries ΓòÉΓòÉΓòÉ
Executable:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöégcc c c_app c gcc Γöé
Γöé Γöé Γöésys os2 Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéDynamic Γöégcc c c_app c gcc Γöé
Γöé Γöé Γöéemx emx2 os2 Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéDynamic ΓöéDynamic Γöéc_import emx2 os2 Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
Standard DLL:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöégcc c c_dllrt c gccΓöé
Γöé Γöé Γöésys os2 Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéDynamic Γöégcc c c_dllrt c gccΓöé
Γöé Γöé Γöéemx emx2 os2 Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéDynamic ΓöéDynamic Γöéc_import emx2 os2 Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
No Runtime DLL:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöégcc c c_dllnrt c Γöé
Γöé Γöé Γöégcc os2 Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
Stand alone DLL:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöégcc c c_dllso c gccΓöé
Γöé Γöé Γöésys os2 Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
ΓòÉΓòÉΓòÉ 9.2. EMX 0.9b Libraries ΓòÉΓòÉΓòÉ
Executable:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöéc_alias gcc c c_appΓöé
Γöé Γöé Γöéc gcc sys os2 end Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéDynamic Γöéc_alias gcc c c_appΓöé
Γöé Γöé Γöéc gcc emx emx2 os2 Γöé
Γöé Γöé Γöéend Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéDynamic ΓöéDynamic Γöéc_alias c_static Γöé
Γöé Γöé Γöéc_import emx2 os2 Γöé
Γöé Γöé Γöéend Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
Standard DLL:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöéc_alias gcc c Γöé
Γöé Γöé Γöéc_dllrt c gcc sys Γöé
Γöé Γöé Γöéos2 end Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéDynamic Γöéc_alias gcc c Γöé
Γöé Γöé Γöéc_dllrt c gcc emx Γöé
Γöé Γöé Γöéemx2 os2 end Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéDynamic ΓöéDynamic Γöéc_alais c_static Γöé
Γöé Γöé Γöéc_import emx2 os2 Γöé
Γöé Γöé Γöéend Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
No Runtime DLL:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöéc_alias gcc c Γöé
Γöé Γöé Γöéc_dllnrt c gcc os2 Γöé
Γöé Γöé Γöéend Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
Stand alone DLL:
ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
ΓöéC-LibraryΓöéSys-LibraryΓöéStandard Libraries Γöé
Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
ΓöéStatic ΓöéStatic Γöéc_alias gcc c Γöé
Γöé Γöé Γöéc_dllso c gcc sys Γöé
Γöé Γöé Γöéos2 end Γöé
ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
ΓòÉΓòÉΓòÉ 10. Library &Include Path Dialog ΓòÉΓòÉΓòÉ
LINK386 library path
Standard Library path: \emx\Lib
Single-thread Library path: \emx\lib\st
Multi-thread Library path: \emx\lib\mt directory
RC include path
include path: \emx\include
GCC include path
C include path: \emx\include
C++ include path: \emx\include\cpp;\emx\include
Objective C include path: \emx\include
ΓòÉΓòÉΓòÉ 11. Editor Dialog ΓòÉΓòÉΓòÉ
Editor used for the 'Edit' function. The default is E.EXE. ( But EPM.EXE is the
better choice !)
You can also enter arguments.
'%' stands for the source or header filename.
o Examples:
1. e.exe %
2. epm.exe /r % (EPM 6 and higher)
ΓòÉΓòÉΓòÉ 12. GCC Load Dialog ΓòÉΓòÉΓòÉ
With this dialog it's possible to let gcc, cpp, cc1, as and emxomf stay in
memory for 0 to 15 minutes. It work's with the GCCLOAD environment variable.
ΓòÉΓòÉΓòÉ 13. Files Listbox Width Dialog ΓòÉΓòÉΓòÉ
With this dialog you can change the listbox width from 12-30 characters (system
font).
ΓòÉΓòÉΓòÉ 14. Cange Path Dialog ΓòÉΓòÉΓòÉ
Project Manager can't find the source or header file. You can enter the new
path of the file or press cancel to delete the file.
ΓòÉΓòÉΓòÉ 15. Project Settings Notebook ΓòÉΓòÉΓòÉ
Settings for the compiler and linker. They are stored in the *.prj file.
o Application Options
o Libraries
o Warnings
o Compiler
o Linker
ΓòÉΓòÉΓòÉ 15.1. Application Options ΓòÉΓòÉΓòÉ
Type of the generated code.
o Type
- Executable: Create EXE File
- Standard DLL: DLL which uses the runtime environment of it's client
application
- Stand alone DLL: DLL with it's own runtime environment
- DLL without runtime env.: DLL without any runtime environment
o Multithreading
- Program work's with multiple threads.
( Thread functions and thread safe libraries)
o Standard Libraries
- C-Library Static: Link C-Library static (c.lib)
- C-Library Dynamic: Link C-Library dynamic (emxlibc.dll)
- System-library Static: Link system call library static (sys.lib)
- System-library Dynamic: Link system call library dynamic (emx.dll)
ΓòÉΓòÉΓòÉ 15.2. Libraries ΓòÉΓòÉΓòÉ
Additional libraries:
Emx IO EMXIO.LIB
Import library for EMXIO.DLL -> I/O functions
Graphic GRAPH.LIB
Graphics library
Video VIDEO.LIB
Text mode window manager functions
Module Def. MODDEF.LIB
Functions for reading def files
Wrapper Func WRAP.LIB
Import library fo emxwrap.dll
Omflib OMFLIB.LIB
Functions for reading & creating OMF Libraries
Gpp GPP.LIB
Gnu C++ library
Standard C++ STDCPP.LIB
Standard C++ library with IOStream library
Objective C OBJC.LIB
You have to use this library for Objective C
Bsd BSD.LIB
BSD library
Curses CURSES.LIB
BSD curses library
(BSD text mode window manager functions)
Socket SOCKET.LIB
Socket library
Other You can specify other libraries in this field.
(Without lib extension. Separate them with space)
ΓòÉΓòÉΓòÉ 15.3. Warnings ΓòÉΓòÉΓòÉ
Enable/Disable compiler warnings. The default is 'All warnings'
ΓòÉΓòÉΓòÉ 15.4. Compiler ΓòÉΓòÉΓòÉ
o Optimization
- None: Do nothing
- Standard: Gcc option O1
- Extended: Gcc option O2
- Maximum: Gcc option O3 ( O2 + inline_functions )
o Debug Information
- Add debug information (for IPMD ! It doesn't work with GDB )
o Stack probes
- Generate stack probes
o Additional Gcc options
- Project Manager puts this GCC commandline options into the GCCOPT
environment variable. For example, if you like warnings enter -pedantic
here !
ΓòÉΓòÉΓòÉ 15.5. Linker ΓòÉΓòÉΓòÉ
Base command Code base address
Stack command * Stacksize
Run from VDM Program startable from VDM
Map file Create map file
Application type
See Def-File
Use the type setting in the linker definition file
PM Application *
Presentation Manager application
Windowed *
Windowable Commandline program
Fullscreen *
Commandline program that only works in fullscreen mode
Note: * Use this settings only for executable programs without a .DEF file.
ΓòÉΓòÉΓòÉ 16. Glossary ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 16.1. Project File ΓòÉΓòÉΓòÉ
The project file contains information about the project settings and the source
and header files.
ΓòÉΓòÉΓòÉ 16.2. Source File ΓòÉΓòÉΓòÉ
o Project Manager works with the following types of source files:
- C-Code with the extension .C
- Objective C-Code with the extension .M
- C++-Code with the extension .CPP
- Resoures with the extension .RC
- Precompiled C, Objective C and C++ code with the extension *.OBJ
- Precompiled resources with the extension .RES
ΓòÉΓòÉΓòÉ 16.3. Header File ΓòÉΓòÉΓòÉ
Project Manager checks these files to find out if it's necessary to compile the
source file. You can enter any type of file as header file.